package com.dream.dao;

import com.dream.bean.Book;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @author 匠人码农
 * @date 2020/11/15 8:12
 * 概要：
 *     BookDao
 */
@Repository
public interface BookDao {

    /**
     * 添加书籍信息
     * @param book  添加书籍信息
     * @return      添加结果
     */
    int addBook(Book book);

    /**
     * 通过id删除书籍信息
     * @param id  图书ID
     * @return    删除结果
     */
    int deleteBookById(Integer id);

    /**
     * 更新书籍信息
     * @param book 更新信息
     * @return     更新结果
     */
    int updateBookById(Book book);

    /**
     * 通过Id查询书籍信息
     * @param id 图书ID
     * @return   图书信息
     */
    Book queryBookById(Integer id);

    /**
     * 查询t_book表有效的数据件数/通过价格区间查询图书有效件数
     * @param paramMap  参数
     * @return          有效图书件数
     */
    int queryForRecordTotal(Map<String,Object> paramMap);

    /**
     * 查询当前页的数据/通过价格区间查询书籍有效信息
     * @param paramMap 参数
     * @return         图书列表
     */
    List<Book> queryForItems(Map<String,Object> paramMap);

}
